home *** CD-ROM | disk | FTP | other *** search
-
- GZIP(1) USER COMMANDS GZIP(1)
-
- NAME
- gzip, gunzip, zcat - compress or expand files
-
- SYNOPSIS
- gzip [ -acdfhLrtvV19 ] [-S suffix] [ name ... ]
- gunzip [ -acfhLrtvV ] [-S suffix] [ name ... ]
- zcat [ -hLV ] [ name ... ]
-
- DESCRIPTION
- Gzip reduces the size of the named files using Lempel-Ziv
- coding (LZ77). Whenever possible, each file is replaced by
- one with the extension .gz, while keeping the same ownership
- modes, access and modification times. (The default exten-
- sion is -gz for VMS, z for MSDOS, OS/2 and Atari.) If no
- files are specified, the standard input is compressed to the
- standard output. If the new file name is too long, gzip
- truncates it and keeps the original file name in the
- compressed file. Gzip will only attempt to compress regular
- files. In particular, it will ignore symbolic links.
-
- Compressed files can be restored to their original form
- using gzip -d or gunzip or zcat.
-
- gunzip takes a list of files on its command line and
- replaces each file whose name ends with .gz, -gz, .z, -z, _z
- or .Z and which begins with the correct magic number with an
- uncompressed file without the original extension. gunzip
- also recognizes the special extensions .tgz and .taz as
- shorthands for .tar.gz and .tar.Z respectively.
-
- gunzip can currently decompress files created by gzip, zip,
- compress or pack. The detection of the input format is
- automatic. When using the first two formats, gunzip checks
- a 32 bit CRC. For pack, gunzip checks the uncompressed
- length. The compress format was not designed to allow con-
- sistency checks. However gunzip is sometimes able to detect
- a bad .Z file. If you get an error when uncompressing a .Z
- file, do not assume that the .Z file is correct simply
- because the standard uncompress does not complain. This gen-
- erally means that the standard uncompress does not check its
- input, and happily generates garbage output.
-
- Files created by zip can be uncompressed by gzip only if
- they have a single member compressed with the 'deflation'
- method. This feature is only intended to help conversion of
- tar.zip files to the tar.gz format. To extract zip files
- with several members, use unzip instead of gunzip.
-
- zcat is identical to gunzip -c. (On some systems, zcat may
- be installed as gzcat to preserve the original link to
- compress.) zcat uncompresses either a list of files on the
- command line or its standard input and writes the
- uncompressed data on standard output. zcat will uncompress
- files that have the correct magic number whether they have a
- .gz suffix or not.
-
- Gzip uses the Lempel-Ziv algorithm used in zip and PKZIP.
- The amount of compression obtained depends on the size of
- the input and the distribution of common substrings. Typi-
- cally, text such as source code or English is reduced by
- 60-70%. Compression is generally much better than that
- achieved by LZW (as used in compress), Huffman coding (as
- used in pack), or adaptive Huffman coding (compact).
-
- Compression is always performed, even if the compressed file
- is slightly larger than the original. The worst case expan-
- sion is a few bytes for the gzip file header, plus 5 bytes
- every 32K block, or an expansion ratio of 0.015% for large
- files. Note that the actual number of used disk blocks
- almost never increases. gzip preserves the mode, ownership
- and timestamps of files when compressing or decompressing.
-
- OPTIONS
- -a --ascii
- Ascii text mode: convert end-of-lines using local con-
- ventions. This option is supported only on some non-
- Unix systems. For MSDOS, CR LF is converted to LF when
- compressing, and LF is converted to CR LF when
- decompressing.
-
- -c --stdout
- Write output on standard output; keep original files
- unchanged. If there are several input files, the out-
- put consists of a sequence of independently compressed
- members. To obtain better compression, concatenate all
- input files before compressing them.
-
- -d --decompress --uncompress
- Decompress.
-
- -f --force
- Force compression or decompression even if the file has
- multiple links or the corresponding file already
- exists, or if the compressed data is read from or writ-
- ten to a terminal. If -f is not given, and when not
- running in the background, gzip prompts to verify
- whether an existing file should be overwritten.
-
- -h --help
- Display a help screen and quit.
-
- -L --license
- Display the gzip license.
-
- -q --quiet
- Suppress all warnings.
-
- -r --recurse
- Travel the directory structure recursively. If any of
- the file names specified on the command line are direc-
- tories, gzip will descend into the directory and
- compress all the files it finds there (or decompress
- them in the case of gunzip ).
-
- -S .z --suffix .z
- Use suffix .z instead of .gz. Any suffix can be given,
- but suffixes other than .z and .gz should be avoided to
- avoid confusion when files are transferred to other
- systems. Previous versions of gzip used the .z suffix.
- This was changed to avoid a conflict with pack(1).
-
- -t --test
- Test. Check the compressed file integrity.
-
- -v --verbose
- Verbose. Display the name and percentage reduction for
- each file compressed.
-
- -V --version
- Version. Display the version number and compilation
- options then quit.
-
- -# --fast --best
- Regulate the speed of compression using the specified
- digit #, where -1 or --fast indicates the fastest
- compression method (less compression) and -9 or --best
- indicates the slowest compression method (optimal
- compression). The default compression level is -5.
-
- ADVANCED USAGE
- Multiple compressed files can be concatenated. In this case,
- gunzip will extract all members at once. For example:
-
- gzip -c file1 > foo.gz
- gzip -c file2 >> foo.gz
-
- Then
- gunzip -c foo
-
- is equivalent to
-
- cat file1 file2
-
- In case of damage to one member of a .gz file, other members
- can still be recovered (if the damaged member is removed).
- However, you can get better compression by compressing all
- members at once:
-
- cat file1 file2 | gzip > foo.gz
-
- compresses better than
-
- gzip -c file1 file2 > foo.gz
-
- If you want to recompress concatenated files to get better
- compression, do:
-
- zcat old.gz | gzip > new.gz
-
- ENVIRONMENT
- The environment variable GZIP can hold a set of default
- options for gzip. These options are interpreted first and
- can be overwritten by explicit command line parameters. For
- example:
- for sh: GZIP="-8 -v"; export GZIP
- for csh: setenv GZIP "-8 -v"
- for MSDOS: set GZIP=-8 -v
-
- On Vax/VMS, the name of the environment variable is
- GZIP_OPT, to avoid a conflict with the symbol set for invo-
- cation of the program.
-
- SEE ALSO
- znew(1), zcmp(1), zmore(1), zforce(1), gzexe(1), zip(1),
- unzip(1), compress(1), pack(1), compact(1)
-
- DIAGNOSTICS
- Exit status is normally 0; if an error occurs, exit status
- is 1. If a warning occurs, exit status is 2.
-
- Usage: gzip [-cdfhLrtvV19] [-S suffix] [file ...]
- Invalid options were specified on the command line.
- file: not in gzip format
- The file specified to gunzip has not been
- compressed.
- file: Corrupt input. Use zcat to recover some data.
- The compressed file has been damaged. The data up to
- the point of failure can be recovered using
- zcat file > recover
- file: compressed with xx bits, can only handle yy bits
- File was compressed (using LZW) by a program that
- could deal with more bits than the decompress code
- on this machine. Recompress the file with gzip,
- which compresses better and uses less memory.
- file: already has .gz suffix -- no change
- The file is assumed to be already compressed.
- Rename the file and try again.
- file already exists; do you wish to overwrite (y or n)?
- Respond "y" if you want the output file to be
- replaced; "n" if not.
- gunzip: corrupt input
- A SIGSEGV violation was detected which usually means
- that the input file has been corrupted.
- xx.x%
- Percentage of the input saved by compression.
- (Relevant only for -v.)
- -- not a regular file or directory: ignored
- When the input file is not a regular file or direc-
- tory, (e.g. a symbolic link, socket, FIFO, device
- file), it is left unaltered.
- -- has xx other links: unchanged
- The input file has links; it is left unchanged. See
- ln(1) for more information. Use the -f flag to force
- compression of multiply-linked files.
-
- CAVEATS
- When writing compressed data to a tape, it is generally
- necessary to pad the output with zeroes up to a block boun-
- dary. When the data is read and the whole block is passed to
- gunzip for decompression, gunzip detects that there is extra
- trailing garbage after the compressed data and emits a warn-
- ing by default. You have to use the --quiet option to
- suppress the warning. This option can be set in the GZIP
- environment variable as in:
- for sh: GZIP="-q" tar xfz /dev/rmt/datn
- for csh: (setenv GZIP "-q"; tar xfz /dev/rmt/datn)
-
- In the above example, gzip is invoked implicitly by the -z
- option of GNU tar. Make sure that the same block size (-b
- option of tar) is used for reading and writing compressed
- data on tapes.
-